package com.ruoyi.cat.mapper;

import com.ruoyi.cat.domain.CatIprecordTable;
import com.ruoyi.cat.domain.DTO.ActivityDTO;
import com.ruoyi.cat.domain.DTO.TradeNumDTO;
import com.ruoyi.cat.domain.VO.*;

import java.util.List;


/**
 * IP记录Mapper接口
 * 
 * @author ruoyi
 * @date 2024-12-30
 */
public interface CatIprecordTableMapper 
{
    /**
     * 查询IP记录
     * 
     * @param id IP记录主键
     * @return IP记录
     */
    public CatIprecordTable selectCatIprecordTableById(Long id);

    /**
     * 查询IP记录列表
     * 
     * @param catIprecordTable IP记录
     * @return IP记录集合
     */
    public List<CatIprecordTable> selectCatIprecordTableList(CatIprecordTable catIprecordTable);

    /**
     * 新增IP记录
     * 
     * @param catIprecordTable IP记录
     * @return 结果
     */
    public int insertCatIprecordTable(CatIprecordTable catIprecordTable);

    /**
     * 修改IP记录
     * 
     * @param catIprecordTable IP记录
     * @return 结果
     */
    public int updateCatIprecordTable(CatIprecordTable catIprecordTable);

    /**
     * 删除IP记录
     * 
     * @param id IP记录主键
     * @return 结果
     */
    public int deleteCatIprecordTableById(Long id);

    /**
     * 批量删除IP记录
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCatIprecordTableByIds(Long[] ids);

    CatIprecordTable getIprecordTable(CatIprecordTable catIprecordTable);


    CatIprecordTable getStaskData(CatIprecordTable catIprecordTable);


    CatIprecordTable getStaskDataNo(CatIprecordTable catIprecordTable);


    List<CatIprecordTable> getShareUserId();

    Long countShareRecord(CatIprecordTable query);


    Long getIprecordTableBy(DataScreeningVO query);

    Long getIprecordTableDay(DataScreeningVO query);


    ActivityDTO getIprecordCount(DataScreeningVO query);

    ActivityDTO getIprecordCountRW(DataScreeningVO query);

    ActivityDTO getIprecordCountCS(DataScreeningVO query);


    ActivityDTO getIprecordZg(DataScreeningVO query);


    Long getIprecordTableByNo(DataScreeningVO query);

    Long getIprecordTableCount(DataScreeningVO query);

    TradeNumDTO getTradeNum(TradeNumVO tradeNumDTO);

    Integer insertCatIpCodeUnique(CatIpCodeVO catIpCodeVO);

    List<ChartVO> getActivityChart(DataScreeningVO dataquery);


    List<ChartVO> getActivityData(DataScreeningVO dataquery);


    Integer saveArticleData(CatForward catForward);


    CatForward selectArticleByUserId(CatForward catForward);

    CatIprecordTable getTotalUvCount(CatIprecordTable catIprecordTable);
}
